-- These MIBs were created on 05/15/2001
-- This module defines enterprise MIBs for VPN certificate
-- 
-- Copyright (c) 1999-2004, Juniper Networks, Inc.
-- All rights reserved.
-- 

-- MODULE-IDENTITY
--  OrgName
--    Juniper Networks, Inc.
--  ContactInfo
--     Customer Support
--     
--     1194 North Mathilda Avenue 
--     Sunnyvale, California 94089-1206
--     USA
--     
--     Tel: 1-800-638-8296
--     E-mail: customerservice@juniper.net
--     HTTP://www.juniper.net"
--
--  Descr
--    This module defines the object that are used to monitor
--    VPN certificate
--
--  Last modified date: 05/03/2004
--  Modified copyright and contact info
--
--  Last modified date: 09/28/2001
--    
--  Last modified date: 11/12/2003
--  Correct spelling mistake
--    

NETSCREEN-CERTIFICATE-MIB DEFINITIONS ::= BEGIN
IMPORTS

    DisplayString       FROM RFC1213-MIB 
    netscreenVpn    FROM NETSCREEN-SMI;
    nsVpnCert   OBJECT IDENTIFIER ::= {netscreenVpn 7}
    
        nsVpnCertDefTable OBJECT-TYPE
                SYNTAX  SEQUENCE OF NsVpnCertDefEntry
                ACCESS  not-accessible
                STATUS  mandatory
                DESCRIPTION 
                        "Certificate default setting table collects the default certificates
                        used when establish a secure VPN connection in NetScreen device. "
                ::= { nsVpnCert 1 }
                
    nsVpnCertDefEntry OBJECT-TYPE
        SYNTAX  NsVpnCertDefEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
               "An entry containing attributes of a certificate"
        INDEX   { nsVpnCertDefIndex }
        ::= { nsVpnCertDefTable 1 }

        NsVpnCertDefEntry ::=
                SEQUENCE {
          nsVpnCertDefIndex
              INTEGER,
                  nsVpnCertDefLdap
                      DisplayString,
                  nsVpnCertDefCrlUrl
                      DisplayString,
                  nsVpnCertDefRefresh
                      DisplayString,
                  nsVpnCertDefX509
                      INTEGER, 
                  nsVpnCertDefVsys
                      INTEGER
       }

        nsVpnCertDefIndex OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "Table index using as primary key when retrieving the table."
        ::= { nsVpnCertDefEntry 1 }

        nsVpnCertDefLdap OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (0..32))
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "LDAP server name."
        ::= { nsVpnCertDefEntry 2 }

        nsVpnCertDefCrlUrl OBJECT-TYPE
        SYNTAX  DisplayString(SIZE(0..32))
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "URL of CRL."
        ::= { nsVpnCertDefEntry 3 }

        nsVpnCertDefRefresh OBJECT-TYPE
        SYNTAX  DisplayString (SIZE(0..32))
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "CRL Refresh Frequency."
        ::= { nsVpnCertDefEntry 4 }

        nsVpnCertDefX509 OBJECT-TYPE
        SYNTAX  INTEGER {
                partial(0),
                full(1)
        }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "X509 Certificate Path Validation Level."
        ::= { nsVpnCertDefEntry 5 }

        nsVpnCertDefVsys OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "vsys the cert setting belongs to."
        ::= { nsVpnCertDefEntry 6 }
  
        nsVpnCertCfgTable OBJECT-TYPE
                SYNTAX  SEQUENCE OF NsVpnCertCfgEntry
                ACCESS  not-accessible
                STATUS  mandatory
                DESCRIPTION 
                        "This table collects detail certificate information."
                ::= { nsVpnCert 2 }

    nsVpnCertCfgEntry OBJECT-TYPE
        SYNTAX  NsVpnCertCfgEntry
        ACCESS  not-accessible
        STATUS  mandatory
        DESCRIPTION
               "Each entry in the nsVpnCertCfgTable contains a set of
               attributes for a certificate"
        INDEX   { nsVpnCertCfgIndex }
        ::= { nsVpnCertCfgTable 1 }

        NsVpnCertCfgEntry ::=
                SEQUENCE {
          nsVpnCertCfgIndex
              INTEGER,
                  nsVpnCertCfgType
                      INTEGER,
                  nsVpnCertCfgSubject
                      DisplayString,
                  nsVpnCertCfgExpire
                      DisplayString,
                  nsVpnCertCfgIssuer
                      DisplayString, 
                  nsVpnCertCfgVsys
                      INTEGER
       }

        nsVpnCertCfgIndex OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "A unique value for certification table.  Its value
              ranges between 0 and 65535 and may not be contiguous." 
        ::= { nsVpnCertCfgEntry 1 }

        nsVpnCertCfgType OBJECT-TYPE
        SYNTAX  INTEGER {
                ca(0),
                local(1)
        }
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "Certificate type."
        ::= { nsVpnCertCfgEntry 2 }

        nsVpnCertCfgSubject OBJECT-TYPE
        SYNTAX  DisplayString (SIZE (0..255))
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "Certificate subject."
        ::= { nsVpnCertCfgEntry 3 }

        nsVpnCertCfgExpire OBJECT-TYPE
        SYNTAX  DisplayString(SIZE(0..32))
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "Certificate expire date."
        ::= { nsVpnCertCfgEntry 4 }

        nsVpnCertCfgIssuer OBJECT-TYPE
        SYNTAX  DisplayString(SIZE(0..64))
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "Certificate configuration details."
        ::= { nsVpnCertCfgEntry 5 }

        nsVpnCertCfgVsys OBJECT-TYPE
        SYNTAX  INTEGER
        ACCESS  read-only
        STATUS  mandatory
        DESCRIPTION
             "Certificate’s vsys."
        ::= { nsVpnCertCfgEntry 6 }
       
END